<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>07 阶乘函数的封装</title>
</head>

<body>
    输入一个数计算阶乘：<input type="text" name="" id="tex">
    <input type="button" value="计算" id="btn">
    <div id="box"></div>
</body>
<script src="../common.js"></script>
<script>
    /* 
        封装函数factorial，实现任意数字阶乘的计算
        要求：页面输入任意数字，点击按钮后计算阶乘
    */

    var tex = getid('tex');
    var btn = getid('btn');
    var box = getid('box');

    function factorial(num) { // 形参：局部变量
        var res = 1; // 初始化，存储阶乘的结果
        for (var i = 1; i <= num; i++) {
            res *= i;
        }
        return res;
    }

    // var res = factorial(9);
    // console.log(res);

    btn.onclick = function () {
        var num = tex.value;
        if (num) {
            // 非空验证
            var res = factorial(num); // 实参可以是数据也可以是变量名
            box.innerHTML = res;
        } else {
            alert('请输入数字');
        }

    }

</script>

</html>